VC对话框如何添加WM_ERASEBKGND消息(OnEraseBkgnd函数)

本文转载于:http://guohaiyang.blog.163.com/blog/static/3213403720081027104147/

1、首先,为了下面使用擦除背景的方便,先增加OnEraseBkgnd函数(WM_ERASEBKGND ),但好多新手都不知道对话框在那里找增加这个函数,来跟我来

快捷键Ctrl+W打开ClassWizard对话框(菜单->view->ClassWizard):选择Class Info,找到左下角的Message filter,下拉列表至最底部,选中Window,OK保存

2、我们再Ctrl+W打开ClassWizard对话框,MessageMaps->Class Name:选择当前工程对话框->Object IDs:选择当前对话框->Messages:下拉找吧,WM_ERASEBKGND有了吧,双击或者Add Function,添加到下面的Member functions后,再双击就可以编辑此函数代码了

3、当然除了以上的方法之外,如果对代码结构基本了解的话,还可以自己手动添加

a、工程的头文件中增加擦出背景函数定义

afx_msg BOOL OnEraseBkgnd(CDC *pDC);

b、增加消息响应

BEGIN_MESSAGE_MAP(CXXXDlg, CDialog) // CXXXDlg是你自己对话框的工程类

……

ON_WM_ERASEBKGND()

END_MESSAGE_MAP()

c、工程源文件cpp中增加此函数的操作部分

BOOL CXXXDlg::OnEraseBkgnd(CDC *pDC)

{

//在这里你想增加那些对图片背景处理的东西就随便填吧guohaiyang.blog.163.com

return TRUE;

}

本页共20段,818个字符,1410 Byte(字节)